FL2440移植linux | 您所在的位置:网站首页 › 嵌入式Linux根文件系统制作 BusyBox+Initramfs › FL2440移植linux |
root_fs部分 1创建必要的文件和文件夹 Mkdir root_fs创建文件系统的根目录,并在其中创建如下文件夹 apps backup bin dev etc info lib a mnt proc sbin sys tmp usr var 从自己的宿主机下的/etc目录下,拷贝相应的文件到root_fs的etc目录中 #ls etc/ fstab hostname inittab mdev.conf passwd protocols resolv.conf services group hosts issue mtab profile random-seed securetty shadow 创建必要的设备节点 #cd dev #mknod -m 666 console c 5 1 #mknod -m 666 null c 1 3 #mknod -m 666 ttyS0 4 64
配置内核支持initramfs文件系统并配置路径 General setup ---> [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support (../root_fs) Initramfs source file(s) 设置u-boot的bootargs Boot options ---> (console=ttyS0,115200 mem=64M rw loglevel=7init=/init) Default kernel command string
Busybox部分 Tar –jxf busybox-1.20.2.tar.bz2 Cd busybox-1.20.2 Make menuconfig ,注意配置交叉编译器和initramfs文件系统的根目录 Busybox Settings ---> uild Options ---> [*] Build BusyBox as a static binary (no shared libs) (/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-) Cross Compiler prefix Installation Options ("make install" behavior) ---> (../root_fs) BusyBox installation prefix Make Make install将编译好的东西放到指定的目录中(root_fs路径下)
Cd到root_fs目录下 ln -s bin/busybox init 创建我们的init 执行程序 将交叉编译器中的库文件拷贝到我们的root_fs文件夹下的相应目录下,构建我们的动态链接库 ls lib/ ld-uClibc-0.9.33.2.so libdl.so.0 libmudflap.so.0 libnsl.so.0 librt.so.0 libutil.so.0 ld-uClibc.so.0 libgcc_s.so libmudflap.so.0.0.0 libpthread-0.9.33.2.so libstdc++.so libcrypt-0.9.33.2.so libgcc_s.so.1 libmudflapth.so libpthread.so.0 libstdc++.so.6 libcrypt.so.0 libm-0.9.33.2.so libmudflapth.so.0 libresolv-0.9.33.2.so libstdc++.so.6.0.14 libc.so.0 libm.so.0 libmudflapth.so.0.0.0 libresolv.so.0 libuClibc-0.9.33.2.so libdl-0.9.33.2.so libmudflap.so libnsl-0.9.33.2.so librt-0.9.33.2.so libutil-0.9.33.2.so
ls usr/lib/ libcharset.so libcrypto.so.1.0.0 libiconv.so liblzo2.so.2 libpthread.so libssl.so.1.0.0 libutil.so libcharset.so.1 libcrypt.so libiconv.so.2 liblzo2.so.2.0.0 libresolv.so libstdc++.so libz.so libcharset.so.1.0.0 libc.so libiconv.so.2.5.1 libm.so librt.so libstdc++.so.6 libz.so.1 libcrypto.so libdl.so liblzo2.so libnsl.so libssl.so libstdc++.so.6.0.14 libz.so.1.2.7
重新编译内核,make之后,我们的开发板就能支持initramfs最小文件系统了 |
CopyRight 2018-2019 实验室设备网 版权所有 |